1. Technical Field
The present invention relates to the processing of multimedia data and, more particularly, relates to a hardware packetizer with programmable formats.
2. Brief Description of the Related Art
Multimedia sources, such as digital video cameras, generate large streams of digital data. Numerous digital video formats are available today, such as, MPEG4, ITU H.263, ITU G.711 and AMR. Furthermore, many of these video formats can be packetized in multiple ways. For example, the H.263 format can be packetized according to IETF RFC 2429 or RFC 2019. RFC 2429 requires a two byte header preceding the video data whereas RFC 2019 requires a four byte or eight byte header preceding the video data. In both cases the video data content is the same but the formatting is different. Furthermore, QuickTime uses the RFC 2429 format standard for H.263 transmission/reception and NetMeeting uses the RFC 2019 format standard for transmission/reception. Accordingly, a packetizer is needed for flexibly arranging such multimedia data in a desired format.
A microprocessor is capable of arranging such multimedia data in a format. A source such as a digital camera supplies multimedia data to an encoder. The encoder provides encoded multimedia data and interrupts in fits and bursts to the microprocessor. These fits and bursts cause the microprocessor to experience frequent and unpredictable interrupt loads. Many microprocessors available today are incapable of handling such a load even if dedicated to the task when a large variety of formats are to be managed, and very few, if any, microprocessors can simultaneously handle a plurality of multimedia sources in real time. Nevertheless, most systems containing microprocessors use them to provide many functions for the system; accordingly, multimedia demands will overload a main processor. Most systems, such as a personal computer or portable electronic device such as a cellular telephone, video server or third generation 3G cellular basestation, use a dedicated main microprocessor. Such a main microprocessor is incapable of handling the load required by real time multimedia processing.